Unlike regular system shells, Eshell never invokes kernel
functions directly, such as exec(3). Instead, it
uses the Lisp functions available in the Emacs Lisp library. It
does this by transforming the command you specify into a callable
Lisp form.1
This transformation, from the string of text typed at the command prompt, to the ultimate invocation of either a Lisp function or external command, follows these steps: